package br.com.unioConci.util.vo;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;
import org.hibernate.annotations.Proxy;
import org.hibernate.annotations.Type;

import br.com.r2.util.tipodado.Flag;
import br.com.r2.util.tipodado.Inteiro;
import br.com.r2.util.tipodado.InteiroLongo;
import br.com.r2.util.tipodado.Texto;

@Entity
@Table(name="TBDMN")
@Proxy(lazy=true)
public class DominioVo implements Serializable
{

	private static final long serialVersionUID = 1L;
	
	@Id
	@Column(name = "DMNCD")
	@GeneratedValue(generator = "InteiroSequenceGenerator")
	@GenericGenerator(name = "InteiroSequenceGenerator", strategy = "br.com.r2.util.tipodado.hibernate.generator.InteiroSequenceGenerator", parameters = { @Parameter(name = "sequence", value = "SQDMN") })
	@Type(type = "br.com.r2.util.tipodado.hibernate.InteiroLongoUT")
	private InteiroLongo codigo;
	
	@Column(name = "DMNNMCMP")
	@Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
	private Texto nomeCampo;
	
	@Column(name = "DMNNMVLR")
	@Type(type = "br.com.r2.util.tipodado.hibernate.TextoUT")
	private Texto nomeValor;
	
	@Column(name = "DMNFGATV")
	@Type(type = "br.com.r2.util.tipodado.hibernate.FlagUT")
	private Flag flagAtivo;
	
	@Column(name = "DMNVLCMP")
	@Type(type = "br.com.r2.util.tipodado.hibernate.InteiroUT")
	private Inteiro valorCampo;
	
	public InteiroLongo getCodigo()
	{
		return codigo;
	}

	public void setCodigo(InteiroLongo codigo)
	{
		this.codigo = codigo;
	}

	public Texto getNomeCampo()
	{
		return nomeCampo;
	}

	public void setNomeCampo(Texto nomeCampo)
	{
		this.nomeCampo = nomeCampo;
	}

	public Texto getNomeValor()
	{
		return nomeValor;
	}

	public void setNomeValor(Texto nomeValor)
	{
		this.nomeValor = nomeValor;
	}

	public Flag getFlagAtivo()
	{
		return flagAtivo;
	}

	public void setFlagAtivo(Flag flagAtivo)
	{
		this.flagAtivo = flagAtivo;
	}

	public Inteiro getValorCampo()
	{
		return valorCampo;
	}

	public void setValorCampo(Inteiro valorCampo)
	{
		this.valorCampo = valorCampo;
	}

}
